package com.xuecheng.api.media;

import com.xuecheng.api.media.model.dto.MediaDTO;
import com.xuecheng.api.media.model.qo.QueryMediaModel;
import com.xuecheng.common.domain.page.PageRequestParams;
import com.xuecheng.common.domain.page.PageVO;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;

/**
 * 实战1——媒资管理api
 *
 * @author lily
 * @date 2021/12/15
 *
 *
 */
@Api(value = "媒资内容管理" )
public interface TMediaApi {


    /**
     * 查询媒资信息功能实现
     *
     * @param  pageParams 分页数据
     * @param  model      查询数据
     * @return com.xuecheng.api.media.model.dto.MediaDTO
     * @author Lily
     * @date 2021/12/15 16:07
     * @paramType [java.lang.String, java.lang.String]
     * @description
     */
    @ApiOperation("查询媒资信息功能实现")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "mediaName", value = "媒资名称", required = true, paramType = "String", dataType = "query"),
            @ApiImplicitParam(name = "type", value = "媒资类型", required = true, paramType = "String", dataType = "query")
    })
    PageVO queryMediaByNameOrType(PageRequestParams pageParams, QueryMediaModel model);


    /**
     * 逻辑删除媒资信息
     *
     * @param mediaId 媒体id
     * @author Lily
     * @date 2021/12/15 19:55
     * @paramType [java.lang.Long]
     * @description
     */
    @ApiOperation("逻辑删除媒资信息")
    @ApiImplicitParam(name = "mediaId", value = "媒资Id", required = true, paramType = "Long", dataType = "path")
    void removeMedia(Long mediaId);


}
